package ast;

import java.util.ArrayList;
import java.util.List;

public class FunctionDefinition implements Definition {

	Variable variable;
	List<Variable> parameters = new ArrayList<>();
	private Body body;
	private Variable argumentList;

	public FunctionDefinition(Variable variable) {
		this.variable = variable;
	}

	public Variable getVariable() {
		return variable;
	}

	public List<Variable> getParameters() {
		return parameters;
	}

	public Body getBody() {
		return body;
	}

	public Variable getArgumentList() {
		return argumentList;
	}

	public void setBody(Body body) {
		this.body = body;
	}

	public void setArgumentList(Variable argumentList) {
		this.argumentList = argumentList;
	}

	@Override
	public void accept(Visitor visitor) {
		visitor.visitFunctionDefinition(this);
	}

}
